home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / network / file-tra / fsp-2.7 / fsp-2 / fsp / include / vms / stat.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-04-14  |  1.9 KB  |  49 lines

  1. #ifndef __STAT_LOADED
  2. #define __STAT_LOADED    1
  3.  
  4. /*    STAT - V3.0    */
  5.  
  6. /*
  7.  * Include file for use with stat/fstat UNIX emulation functions
  8.  */
  9.  
  10. typedef unsigned off_t;
  11. typedef unsigned short ino_t;
  12. typedef char *dev_t;
  13. struct  stat
  14. {
  15.         dev_t   st_dev;        /* pointer to physical device name */
  16.         ino_t   st_ino[3];    /* 3 words to receive fid */
  17.         unsigned short st_mode;    /* file "mode" i.e. prot, dir, reg, etc. */
  18.         int    st_nlink;    /* for compatibility - not really used */
  19.         unsigned st_uid;    /* from ACP - QIO uic field */
  20.         unsigned short st_gid;    /* group number extracted from st_uid */
  21.         dev_t   st_rdev;    /* for compatibility - always zero */
  22.         off_t   st_size;    /* file size in bytes */
  23.         unsigned st_atime;    /* file access time; always same as st_mtime */
  24.         unsigned st_mtime;    /* last modification time */
  25.         unsigned st_ctime;    /* file creation time */
  26.     char    st_fab_rfm;    /* record format */
  27.     char    st_fab_rat;    /* record attributes */
  28.     char    st_fab_fsz;    /* fixed header size */
  29.     unsigned st_fab_mrs;    /* record size */
  30. };
  31.  
  32. typedef struct stat stat_t; 
  33.  
  34. #define S_IFMT   0170000         /* type of file */
  35. #define          S_IFDIR 0040000 /* directory */
  36. #define          S_IFCHR 0020000 /* character special */
  37. #define          S_IFBLK 0060000 /* block special */
  38. #define          S_IFREG 0100000 /* regular */
  39. #define          S_IFMPC 0030000 /* multiplexed char special */
  40. #define          S_IFMPB 0070000 /* multiplexed block special */
  41. #define S_ISUID  0004000         /* set user id on execution */
  42. #define S_ISGID  0002000         /* set group id on execution */
  43. #define S_ISVTX  0001000         /* save swapped text even after use */
  44. #define S_IREAD  0000400         /* read permission, owner */
  45. #define S_IWRITE 0000200         /* write permission, owner */
  46. #define S_IEXEC  0000100         /* execute/search permission, owner */
  47.  
  48. #endif                    /* __STAT_LOADED */
  49.